package cn.tedu.sp04.feign;

import cn.tedu.entity.Item;
import cn.tedu.web.util.JsonResult;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

/**
 * @author Xiechong
 * @version 1.0
 * @ClassName: ItemClient
 * @Description: TODO
 * @date 2021/12/16 14:13
 */
/*
* 通过注解配置:
* 调用哪个服务
* 调用服务的哪个路径
* 向这个路径提交什么参数
* */
/*
* userClient.getUser(8)
*   1.调用后台模块服务器: http://USER-SERVICE的服务器地址
*   2.调用指定路径: http://USER-SERVICE的服务器地址/{userId}
*   3.向路径提交参数:http://USER-SERVICE的服务器地址/{userId}
* */
@FeignClient(name = "ITEM-SERVICE")//通过名称发现服务器的地址
public interface ItemClient {
    @GetMapping("/{orderId}")
    JsonResult<List<Item>> getItems(@PathVariable String orderId);

    @PostMapping("/decreaseNumber")
    JsonResult<?> decreaseNumber(@RequestBody List<Item> items);
}
